// 2022年8月25日 14:57:46 chanchaw
// 工具栏按钮权限工具
let currentUserToolPermissions = [];

// 传入数字类型 user_id 查询获取该用户的 tool permission
function getUserToolPermissions(loginName){
    $.ajax({
        type : "POST",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify({"remark":loginName}),
        url : "sysPermissionTool/listQuery",
        success : function(result) {
            currentUserToolPermissions = result;
            localStorage.setItem('currentUserToolPermissions',JSON.stringify(result));
        },
        error : function(e){
            console.log(e.status);
            console.log(e.responseText);
        },
        complete: function () {
        }
    })
}

// 判断工具栏按钮是否有权限
// 返回 true 表示有权限
function checkToolPermission(objSid,btnSid){
    const tmp = JSON.parse(localStorage.getItem('currentUserToolPermissions'))
    const perms = Array.from(tmp);
    if(!perms) return true;// 没有该用户数据表示非客户账号，则有权限访问
    if(perms.length <=0 ) return true;// 没有该用户数据表示非客户账号，则有权限访问
    const currentObjPerms = perms.filter(item => item.object_sid === objSid);
    if(!currentObjPerms || currentObjPerms.length<=0) return true;// 针对当前对象没有设置权限则拥有所有权限

    // 有针对当前系统对象的数据则需要验证按钮是否有权限
    const btnPerms = currentObjPerms.filter(item => item.btn_sid === btnSid);
    if(!btnPerms || btnPerms.length<=0) return false;
    return !!btnPerms[0].enabled;// 存在数据则根据enabled决定是否有权限
}